home *** CD-ROM | disk | FTP | other *** search
/ Programming a Multiplayer FPS in DirectX / Programming a Multiplayer FPS in DirectX (Companion CD).iso / DirectX / dxsdk_oct2004.exe / dxsdk.exe / Utilities / MView / treeview.h < prev    next >
Encoding:
C/C++ Source or Header  |  2004-09-30  |  1.7 KB  |  61 lines

  1. #pragma once
  2.  
  3. #ifndef TREEVIEW_H
  4. #define TREEVIEW_H
  5.  
  6. /*//////////////////////////////////////////////////////////////////////////////
  7. //
  8. // File: Treeview.h
  9. //
  10. // Copyright (C) 1999 Microsoft Corporation. All Rights Reserved.
  11. //
  12. //
  13. //////////////////////////////////////////////////////////////////////////////*/
  14.  
  15. typedef HRESULT (* PFNSELECTED)(PVOID pvCallbackData, PVOID pvItemId);
  16.  
  17.  
  18. class CFrameView
  19. {
  20.     friend HRESULT CreateFrameView(RECT &rTreeView, HWND hwndParent, HINSTANCE hInst, 
  21.                         PFNSELECTED pfnSelected, PVOID pvCallbackData,
  22.                         WNDPROC pfnKeyPress,
  23.                         CFrameView **ppfvNew);
  24.     friend bool InitFrameViewClass(HINSTANCE hInstance);
  25.  
  26.  
  27. public:
  28.     HTREEITEM InsertIntoTree(HTREEITEM htreeParent, char *szString, PVOID pvItemId);
  29.     void SelectItem(HTREEITEM htreeSelect);
  30.     HRESULT RemoveAllItems();
  31.  
  32.     BOOL ToggleVisible();
  33.     void GetWindowRect(RECT *pRect);
  34.  
  35.     ~CFrameView();
  36. private:    
  37.     HRESULT Init(HWND hwndFrame, HINSTANCE hInst, PFNSELECTED pfnSelected, WNDPROC pfnKeyPress, PVOID pvCallbackData);
  38.  
  39.     static LRESULT WINAPI WndProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam);
  40.  
  41.     HWND m_hwndFrame;
  42.     HWND m_hwndTree;
  43.     UINT m_iWidth;
  44.     UINT m_iHeight;
  45.  
  46.     BOOL m_bCurrentlyDeleting;
  47.     BOOL m_bVisible;
  48.  
  49.     PFNSELECTED m_pfnSelected;
  50.     WNDPROC m_pfnKeyPress;
  51.     PVOID m_pvCallbackData;
  52. };
  53.  
  54. bool InitFrameViewClass(HINSTANCE hInstance);
  55. HRESULT CreateFrameView(RECT &rTreeView, HWND hwndParent, HINSTANCE hInst, 
  56.                         PFNSELECTED pfnSelected, PVOID pvCallbackData,
  57.                         WNDPROC pfnKeyPress,
  58.                         CFrameView **ppfvNew);
  59.  
  60. #endif
  61.